﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace GestorDeFlotasDesktop.AbmAuto
{
    public partial class ListadoAuto : Form
    {
        public ListadoAuto()
        {
            InitializeComponent();
        }

        public struct auto
        {
            public int id_auto; //id_taxi
            public string modelo;
            public string patente;
            public string licencia;
            public string rodado;
            public string reloj;
            public string id_marca;
            public string estado;
        }

        public auto datoAuto;

        public int traerTodos = 0;

        public void ListarTodos()
        {
            traerTodos = 1;
        }

        private void botonBuscar_Click(object sender, EventArgs e)
        {
            sqlManager.Conectar();
            dGridResultado.DataSource = sqlManager.ObtenerAutos(comboBoxMarca.SelectedIndex != 0 ? comboBoxMarca.Text : "", 
                                                                textBoxModelo.Text.Length > 0 ? textBoxModelo.Text : "", 
                                                                textBoxPatente.Text.Length > 0 ? textBoxPatente.Text : "", 
                                                                textBoxLicencia.Text.Length > 0 ? textBoxLicencia.Text : "", 
                                                                comboBoxReloj.SelectedIndex != 0 ? comboBoxReloj.SelectedValue.ToString() : "",
                                                                traerTodos);
            sqlManager.Desconectar();
        }

        private void botonCancelar_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void botonLimpiar_Click(object sender, EventArgs e)
        {
            comboBoxMarca.Text = string.Empty;
            comboBoxReloj.Text = string.Empty;
            textBoxModelo.Text = string.Empty;
            textBoxPatente.Text = string.Empty;
            textBoxLicencia.Text = string.Empty;
        }

        private void dGridResultado_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            int index = dGridResultado.SelectedCells[0].RowIndex;
            datoAuto.id_auto = Convert.ToInt32(dGridResultado["ID Taxi", index].Value);
            datoAuto.id_marca = dGridResultado["ID Marca", index].Value.ToString();
            datoAuto.modelo = dGridResultado["Modelo", index].Value.ToString();
            datoAuto.patente = dGridResultado["Patente", index].Value.ToString();
            datoAuto.licencia = dGridResultado["Licencia", index].Value.ToString();
            datoAuto.rodado = dGridResultado["Rodado", index].Value.ToString();
            datoAuto.reloj = dGridResultado["Reloj", index].Value.ToString();
            datoAuto.estado = dGridResultado["Estado", index].Value.ToString();
            this.Close();
        }

        private void llenarMarcas()
        {
            sqlManager.Conectar();
            comboBoxMarca.DataSource = sqlManager.ObtenerMarcasAuto();
            sqlManager.Desconectar();

            comboBoxMarca.ValueMember = "ID";
            comboBoxMarca.DisplayMember = "Marca";
            comboBoxMarca.SelectedIndex = 0;
        }

        private void llenarRelojes()
        {
            sqlManager.Conectar();
            comboBoxReloj.DataSource = sqlManager.ObtenerTodosLosRelojes(); //
            sqlManager.Desconectar();

            comboBoxReloj.ValueMember = "Id";
            comboBoxReloj.DisplayMember = "Reloj";
            comboBoxReloj.SelectedIndex = 0;
        }

        private void ListadoAuto_Load(object sender, EventArgs e)
        {
            llenarMarcas();
            llenarRelojes();
        }

       
    }
}
